home *** CD-ROM | disk | FTP | other *** search
/ SGI Varsity Update 1998 August / SGI Varsity Update 1998 August.iso / dist / dist6.4 / mpi.idb / usr / share / catman / u_man / cat1 / MPI.z / MPI
Text File  |  1998-07-29  |  25KB  |  524 lines

  1. MPI(1)                                                Last changed: 5-18-98
  2.  
  3.  
  4. NNAAMMEE
  5.      MMPPII - Introduction to the Message Passing Interface (MPI)
  6.  
  7. IIMMPPLLEEMMEENNTTAATTIIOONN
  8.      UNICOS, UNICOS/mk, and IRIX systems
  9.  
  10. SSTTAANNDDAARRDDSS
  11.      This release implements the MPI 1.2 standard, as documented by the MPI
  12.      Forum in the spring 1997 release of _M_P_I: _A _M_e_s_s_a_g_e _P_a_s_s_i_n_g _I_n_t_e_r_f_a_c_e
  13.      _S_t_a_n_d_a_r_d.
  14.  
  15.      The MPI implementation for UNICOS/mk systems is derived from the
  16.      implementation of MPI for UNICOS MAX systems developed at Edinburgh
  17.      Parallel Computing Centre.  The software is supplied to Cray Research
  18.      under license from the University of Edinburgh.
  19.  
  20. DDEESSCCRRIIPPTTIIOONN
  21.      The Message Passing Interface (MPI) is a component of the Cray Message
  22.      Passing Toolkit and Message Passing Toolkit for IRIX (MPT), which is a
  23.      software package that supports parallel programming across a network
  24.      of computer systems through a technique known as message passing.  The
  25.      goal of MPI, simply stated, is to develop a widely used standard for
  26.      writing message-passing programs. As such, the interface establishes a
  27.      practical, portable, efficient, and flexible standard for message
  28.      passing.
  29.  
  30.      In designing MPI, the MPI Forum sought to make use of the most
  31.      attractive features of a number of existing message passing systems,
  32.      rather than selecting one of them and adopting it as the standard.
  33.      Thus, MPI has been strongly influenced by work at the IBM T. J. Watson
  34.      Research Center, Intel's NX/2, Express, nCUBE's Vertex, p4, and
  35.      PARMACS. Other important contributions have come from Zipcode, Chimp,
  36.      PVM, Chameleon, and PICL.
  37.  
  38.      For UNICOS and IRIX systems, this release of MPI requires the presence
  39.      of an Array Services daemon (aarrrraayydd) on each host that is to run MPI
  40.      processes. In a single-host environment, no system administration
  41.      effort should be required beyond installing and activating aarrrraayydd.
  42.      However, users wishing to run MPI applications across multiple hosts
  43.      will need to ensure that those hosts are properly configured into an
  44.      array.  For more information about Array Services, see the aarrrraayydd(1M),
  45.      aarrrraayydd..ccoonnff(4), and aarrrraayy__sseerrvviicceess(5) man pages.
  46.  
  47.      When running across multiple hosts, UNICOS and IRIX users must set up
  48.      their ..rrhhoossttss files to enable remote logins. (This does not apply to
  49.      UNICOS/mk users).  Note that MPI does not use rrsshh, so it is not
  50.      necessary that rrsshhdd be running on security-sensitive systems; the
  51.      ..rrhhoossttss file was simply chosen to eliminate the need to learn yet
  52.      another mechanism for enabling remote logins.
  53.  
  54.      MPI is a specification (like C or Fortran) and there are a number of
  55.      implementations. The rest of this man page describes the use of the
  56.      Cray Research and Silicon Graphics implementations of MPI for UNICOS,
  57.      UNICOS/mk, and IRIX systems.
  58.  
  59.      Other sources of MPI information are as follows:
  60.  
  61.      * Man pages for MPI library functions
  62.  
  63.      * A copy of the MPI standard as PostScript or hypertext on the World
  64.        Wide Web at the following URL:
  65.  
  66.           http://www.mpi-forum.org/
  67.  
  68.      * Other MPI resources on the World Wide Web, such as the following:
  69.  
  70.           http://www.mcs.anl.gov/mpi/index.html
  71.           http://www.erc.msstate.edu/mpi/index.html
  72.           http://www.osc.edu/lam.html
  73.  
  74.    GGeettttiinngg SSttaarrtteedd
  75.      Software included in the Cray Message Passing Toolkit (MPT) for UNICOS
  76.      and UNICOS/mk systems was designed to be used with the Cray
  77.      Programming Environment 3.0 release or later. The MMoodduulleess software
  78.      package is used to support the installation of both the Programming
  79.      Environment and MPT.  To use the MPT software, load the mmpptt module in
  80.      addition to loading the Programming Environment module, PPrrggEEnnvv.  For
  81.      information on using modules, see _I_n_s_t_a_l_l_i_n_g _P_r_o_g_r_a_m_m_i_n_g _E_n_v_i_r_o_n_m_e_n_t
  82.      _P_r_o_d_u_c_t_s, publication SG-5191, or, if the Programming Environment has
  83.      already been installed on your system, see the online ASCII file,
  84.      //oopptt//ccttll//ddoocc//RREEAADDMMEE.
  85.  
  86.      After you have initialized modules and loaded the PPrrggEEnnvv module, enter
  87.      the following command:
  88.  
  89.           module load mpt
  90.  
  91.      To unload the mmpptt module, enter the following command:
  92.  
  93.           module unload mpt
  94.  
  95.      As an option for IRIX systems, MPT software can be installed in an
  96.      alternate location for use with the modules software package.  If MPT
  97.      software has been installed on your system for use with modules, you
  98.      can access the software with the mmoodduullee command shown in the previous
  99.      example.  If MPT has not been installed for use with modules, the
  100.      software resides in default locations on your system (//uussrr//iinncclluuddee,
  101.      //uussrr//lliibb, /usr/array/PVM,, aanndd ssoo oonn)),, aass iinn pprreevviioouuss rreelleeaasseess..  FFoorr
  102.      ffuurrtthheerr iinnffoorrmmaattiioonn,, sseeee IInnssttaalllliinngg MMPPTT ffoorr UUssee wwiitthh MMoodduulleess,, iinn tthhee
  103.      MMoodduulleess rreellnnootteess..
  104.  
  105.    UUssiinngg SShhaarreedd MMeemmoorryy MMPPII oonn UUNNIICCOOSS SSyysstteemmss
  106.      If you are using the shared memory method of communication, you must
  107.      ensure that the correct data allocation occurs.  In a multitasking
  108.      environment, all global or static data is shared among the tasks in
  109.      the multitasking group.  Message passing assumes that this data is
  110.      private to each task.  To preserve this "private to a task" behavior,
  111.      use the --hh ttaasskkpprriivvaattee option for C programs compiled with the cccc
  112.      command, or the  --aa ttaasskkccoommmmoonn option for Fortran programs compiled
  113.      with the ff9900 command.  These options specify that all global or static
  114.      data is private to a task.  For more information on the use of --hh
  115.      ttaasskkpprriivvaattee and --aa ttaasskkccoommmmoonn, see the mmpptt__iinnttrroo(1) man page.
  116.  
  117.      The following example shows how to build a C program that will use the
  118.      shared memory mode of communication:
  119.  
  120.           cccc --hh ttaasskkpprriivvaattee $$LLIIBBCCMM ffrreedd..cc
  121.  
  122.      LLIIBBCCMM is an environment variable that is automatically set to the
  123.      following value when the MPT module is loaded:
  124.  
  125.           -D_MULTIP_ -L$MPTDIR/lib/multi
  126.  
  127.      It points to the reentrant version of lliibbcc..aa in the default MPT
  128.      software.
  129.  
  130.      For more information on building programs that use shared memory, see
  131.      the mmpptt__iinnttrroo(1) man page.  Programs built to use shared memory
  132.      communication can also be run by using TCP for communication, but the
  133.      shared memory and TCP communication modes cannot be mixed during the
  134.      execution of a program.
  135.  
  136.      To run a program that was built to use the shared memory mode of
  137.      communication, use the mmppiirruunn(1) command to specify the number of
  138.      tasks, as follows:
  139.  
  140.           mpirun -nt 4 fred
  141.  
  142.    UUssiinngg TTCCPP SSoocckkeettss ffoorr CCoommmmuunniiccaattiioonn oonn UUNNIICCOOSS SSyysstteemmss
  143.      The following example shows how to build a program that will use TCP
  144.      for communication:
  145.  
  146.           cc -o fred fred.c
  147.  
  148.      The environment automatically includes the path names to MPI include
  149.      files and libraries.  The MPI libraries are also automatically
  150.      included.  A program built for TCP will not run correctly in shared
  151.      memory mode, but you can use TCP to run a program built for shared
  152.      memory.
  153.  
  154.      To run a program that uses TCP for communication, use the mmppiirruunn(1)
  155.      command and specify the number of processes by using the --nnpp option,
  156.      as follows:
  157.  
  158.           mpirun -np 4 fred
  159.  
  160.      For more information about running TCP programs between multiple
  161.      hosts, see the mmppiirruunn(1) man page.
  162.  
  163.    UUssiinngg MMPPII oonn UUNNIICCOOSS//mmkk SSyysstteemmss
  164.      The following examples show how to build a program on UNICOS/mk
  165.      systems:
  166.  
  167.           cc -o fred fred.c
  168.           or
  169.           f90 -o fred -X4 fred.f
  170.  
  171.      If you have loaded the mmpptt module, the directory that contains the MPI
  172.      include files is automatically searched, and the MPI library is
  173.      automatically loaded.
  174.  
  175.      When running MPI programs on UNICOS/mk systems, use of the mmppiirruunn(1)
  176.      command is optional.  You can choose to execute your program as you
  177.      would any other UNICOS/mk application or you can use the mmppiirruunn(1)
  178.      command.
  179.  
  180.      The following example shows how to execute a UNICOS/mk MPI program
  181.      that has been built as a malleable executable file:
  182.  
  183.           mpprun -n 4 fred
  184.  
  185.      The following example shows how to execute a UNICOS/mk MPI program
  186.      with mmppiirruunn(1):
  187.  
  188.           mmppiirruunn --nnpp 44 ffrreedd
  189.  
  190.    DDaattaa SSttrreeaammss oonn UUNNIICCOOSS//mmkk SSyysstteemmss
  191.      UNICOS/mk hardware data streams are enabled by default for
  192.      applications that use the Cray MPT implementation of MPI.  MPI
  193.      internal remote load and store operations are ensured to be coherent
  194.      with streams operations.  With data streams enabled, changes in
  195.      behavior occur for the MMPPII__BBUUFFFFEERR__MMAAXX and MMPPII__BBUUFFFFEERR__TTOOTTAALL environment
  196.      variables, as well as the MMPPII__BBuuffffeerr__aattttaacchh(3) and
  197.      MMPPII__BBuuffffeerr__ddeettaacchh(3) routines.  For information on these changes, see
  198.      the mmppiirruunn(1), MMPPII__BBuuffffeerr__aattttaacchh(3), or MMPPII__BBuuffffeerr__ddeettaacchh(3) man
  199.      pages.  For more information on hardware streaming used on UNICOS/mk
  200.      systems, see the iinnttrroo__ssttrreeaammss(3) man page.
  201.  
  202.    UUssiinngg MMPPII oonn IIRRIIXX SSyysstteemmss
  203.      On IRIX systems, compile and link your MPI program as shown in the
  204.      following examples.
  205.  
  206.      To use the 64-bit MPI library, enter the following command:
  207.  
  208.           cc -64 compute.c -lmpi
  209.  
  210.      To use the 32-bit MPI library, enter the following command:
  211.  
  212.           cc -n32 compute.c -lmpi
  213.  
  214.      Applications compiled under the previous (3.0) release of MPI should
  215.      not require recompilation to run under this new (3.1) release.
  216.      However, it is not possible for executable files running under the 3.0
  217.      release to interoperate with others running under the 3.1 release.
  218.  
  219.      The C version of the MMPPII__IInniitt(3) routine ignores the arguments that
  220.      are passed to it and does not modify them.
  221.  
  222.      SSttddiinn is enabled only for those MPI processes with rank 0 in the
  223.      MMPPII__CCOOMMMM__WWOORRLLDD environment variable (which does not need to be located
  224.      on the same host as mmppiirruunn or xxmmppii).  SSttddoouutt and ssttddeerrrr results are
  225.      enabled for all MPI processes in the job.
  226.  
  227.      Unlike earlier releases, this version of the MPI implementation is
  228.      compatible with the sspprroocc system call and can therefore coexist with
  229.      ddooaaccrroossss loops.  The MPI library is still not thread-safe, however.
  230.      Therefore, calls to MPI routines in a multithreaded application will
  231.      require some form of mutual exclusion.
  232.  
  233.      The IRIX implementation of MPI requires that all MPI processes call
  234.      MMPPII__FFiinnaalliizzee eventually.
  235.  
  236.    BBuuffffeerriinngg oonn UUNNIICCOOSS aanndd IIRRIIXX SSyysstteemmss
  237.      On UNICOS and IRIX systems, for the purposes of buffering, MPI
  238.      messages are grouped into two classes based on length: short (messages
  239.      with lengths of 64 bytes or less) and long (messages with lengths
  240.      greater than 64 bytes). MPI buffers messages of all sizes.
  241.  
  242. EENNVVIIRROONNMMEENNTT VVAARRIIAABBLLEESS
  243.      This section describes the variables that specify the environment
  244.      under which your MPI programs will run. Environment variables have
  245.      predefined values.  You can change some variables to achieve
  246.      particular performance objectives; others are required values for
  247.      standard-compliant programs.
  248.  
  249.      MMPPII__AARRRRAAYY
  250.           Sets an alternative array name to be used for communicating with
  251.           Array Services when a job is being launched.
  252.  
  253.           Default:  The default name set in the aarrrraayydd..ccoonnff file
  254.  
  255.           Operating system:  UNICOS and IRIX systems
  256.  
  257.      MMPPII__BBUUFFFFEERR__MMAAXX
  258.           Specifies maximum buffer size. Specifies a maximum message size,
  259.           in bytes, that will be buffered for MPI standard, buffered, or
  260.           ready send communication modes.
  261.  
  262.           Default:  No limit
  263.  
  264.           Operating system:  UNICOS/mk systems
  265.  
  266.      MMPPII__BBUUFFFFEERR__TTOOTTAALL
  267.           Specifies total buffer memory. Specifies a limit to the amount of
  268.           memory the MPI implementation can use to buffer messages for MPI
  269.           standard, buffered, or ready send communication modes.
  270.  
  271.           Default:  No limit
  272.  
  273.           Operating system:  UNICOS/mk systems
  274.  
  275.      MMPPII__BBUUFFSS__PPEERR__HHOOSSTT
  276.           Determines the number of shared message buffers (16 KB each) that
  277.           MPI is to allocate for each host.  These buffers are used to send
  278.           long messages.
  279.  
  280.           Default:  16 pages (1 page = 16KB)
  281.  
  282.           Operating system:  IRIX systems
  283.  
  284.      MMPPII__BBUUFFSS__PPEERR__PPRROOCC
  285.           Determines the number of private message buffers (16 KB each)
  286.           that MPI is to allocate for each process.  These buffers are used
  287.           to send long messages.
  288.  
  289.           Default:  16 pages (1 page = 16KB)
  290.  
  291.           Operating system:  UNICOS and IRIX systems
  292.  
  293.      MMPPII__BBYYPPAASSSS__DDEEVVSS
  294.           Sets the order for opening HIPPI adapters. The list of devices
  295.           does not need to be space-delimited (0123 is valid).
  296.  
  297.           An array node usually has at least one HIPPI adapter, the
  298.           interface to the HIPPI network.  The HIPPI bypass is a lower
  299.           software layer that interfaces directly to this adapter. The
  300.           bypass sends MPI control and data messages that are 16 Kbytes or
  301.           shorter.
  302.  
  303.           When you know that a system has multiple HIPPI adapters, you can
  304.           use the MMPPII__BBYYPPAASSSS__DDEEVVSS variable to specify the adapter that a
  305.           program opens first. This variable can be used to ensure that
  306.           multiple MPI programs distribute their traffic across the
  307.           available adapters.  If you prefer not to use the HIPPI bypass,
  308.           you can turn it off by setting the MMPPII__BBYYPPAASSSS__OOFFFF variable.
  309.  
  310.           When a HIPPI adapter reaches its maximum capacity of four MPI
  311.           programs, it is not available to additional MPI programs. If all
  312.           HIPPI adapters are busy, MPI sends internode messages by using
  313.           TCP over the adapter instead of the bypass.
  314.  
  315.           Default:  0123
  316.  
  317.           Operating system:  IRIX systems
  318.  
  319.      MMPPII__BBYYPPAASSSS__OOFFFF
  320.           Disables the HIPPI bypass, forcing all host-to-host MPI messages
  321.           to be sent through TCP.
  322.  
  323.           Default:  Not enabled
  324.  
  325.           Operating system:  IRIX systems
  326.  
  327.      MMPPII__CCHHEECCKK__AARRGGSS
  328.           Enables checking of MPI function arguments. Segmentation faults
  329.           might occur if bad arguments are passed to MPI, so this is useful
  330.           for debugging purposes.  Using argument checking adds several
  331.           microseconds to latency.
  332.  
  333.           Default:  Not enabled
  334.  
  335.           Operating system:  UNICOS and IRIX systems
  336.  
  337.      MMPPII__CCOOMMMM__MMAAXX
  338.           Sets the maximum number of communicators that can be used in an
  339.           MPI program.  Use this variable to increase internal default
  340.           limits. (Might be required by standard-compliant programs.)  MPI
  341.           generates an error message if this limit (or the default, if not
  342.           set) is exceeded.
  343.  
  344.           Default:  256
  345.  
  346.           Operating system:  UNICOS and IRIX systems
  347.  
  348.      MMPPII__DDIIRR
  349.           Sets the working directory on a host. When an mmppiirruunn(1) command
  350.           is issued, the Array Services daemon on the local or distributed
  351.           node responds by creating a user session and starting the
  352.           required MPI processes. The user ID for the session is that of
  353.           the user who invokes mmppiirruunn, so this user must be listed in the
  354.           ..rrhhoossttss file on the responding nodes. By default, the working
  355.           directory for the session is the user's $$HHOOMMEE directory on each
  356.           node. You can direct all nodes to a different directory (an NFS
  357.           directory that is available to all nodes, for example) by setting
  358.           the MMPPII__DDIIRR variable to a different directory.
  359.  
  360.           Default:  $$HHOOMMEE on the node. If using the --nnpp or --nntt option of
  361.           mmppiirruunn(1), the default is the current directory.
  362.  
  363.           Operating system:  UNICOS and IRIX systems
  364.  
  365.      MMPPII__DDSSMM__MMUUSSTTRRUUNN
  366.           Specifies the CPUs on which processes are to run. You can set the
  367.           MMPPII__DDSSMM__VVEERRBBOOSSEE variable to request that the mmppiirruunn(1) command
  368.           print information about where processes are executing.  Using
  369.           this feature might provide some benefit to your job at the cost
  370.           of overall system performance for other jobs.
  371.  
  372.           Default:  Not enabled
  373.  
  374.           Operating system:  IRIX systems
  375.  
  376.      MMPPII__DDSSMM__OOFFFF
  377.           Turns off nonuniform memory access (NUMA) optimization in the MPI
  378.           library.  Using this feature might provide some benefit to your
  379.           job at the cost of overall system performance for other jobs.
  380.  
  381.           Default:  Not enabled
  382.  
  383.           Operating system:  IRIX systems
  384.  
  385.      MMPPII__DDSSMM__PPPPMM
  386.           Sets the number of MPI processes that can be run on each node of
  387.           an IRIX system.  Only values of 1 or 2 are currently allowed.
  388.  
  389.           Default:  2
  390.  
  391.           Operating system:  IRIX systems
  392.  
  393.      MMPPII__DDSSMM__VVEERRBBOOSSEE
  394.           Instructs mmppiirruunn(1) to print information about process placement
  395.           for jobs running on nonuniform memory access (NUMA) machines
  396.           (unless MMPPII__DDSSMM__OOFFFF is also set). Output is sent to ssttddeerrrr.
  397.  
  398.           Default:  Not enabled
  399.  
  400.           Operating system:  IRIX systems
  401.  
  402.      MMPPII__GGRROOUUPP__MMAAXX
  403.           Determines the maximum number of groups that can simultaneously
  404.           exist for any single MPI process.  Use this variable to increase
  405.           internal default limits. (This variable might be required by
  406.           standard-compliant programs.)  MPI generates an error message if
  407.           this limit (or the default, if not set) is exceeded.
  408.  
  409.           Default:  256
  410.  
  411.           Operating system:  UNICOS and IRIX systems
  412.  
  413.      MMPPII__MMSSGGSS__PPEERR__HHOOSSTT
  414.           Sets the number of message headers to allocate for MPI messages
  415.           on each MPI host. Space for messages that are destined for a
  416.           process on a different host is allocated as shared memory on the
  417.           host on which the sending processes are located. MPI locks these
  418.           pages in memory. Use the MMPPII__MMSSGGSS__PPEERR__HHOOSSTT variable to allocate
  419.           buffer space for interhost messages.
  420.  
  421.           Caution:  If you set the memory pool for interhost packets to a
  422.           large value, you can cause allocation of so much locked memory
  423.           that total system performance is degraded.
  424.  
  425.           Default:  1024 messages
  426.  
  427.           Operating system:  IRIX systems
  428.  
  429.      MMPPII__MMSSGGSS__PPEERR__PPRROOCC
  430.           Sets the maximum number of buffers to be allocated from sending
  431.           process space for outbound messages going to the same host. (This
  432.           variable might be required by standard-compliant programs.) MPI
  433.           allocates buffer space for local messages based on the message
  434.           destination. Space for messages that are destined for local
  435.           processes is allocated as additional process space for the
  436.           sending process.
  437.  
  438.           Default:  1024
  439.  
  440.           Operating system:  UNICOS and IRIX systems
  441.  
  442.      MMPPII__RREEQQUUEESSTT__MMAAXX
  443.           Determines the maximum number of nonblocking sends and receives
  444.           that can simultaneously exist for any single MPI process.  Use
  445.           this variable to increase internal default limits.  (This
  446.           variable might be required by standard-compliant programs.)  MPI
  447.           generates an error message if this limit (or the default, if not
  448.           set) is exceeded.
  449.  
  450.           Default:  1024
  451.  
  452.           Operating system:  UNICOS and IRIX systems
  453.  
  454.      MMPPII__SSMM__PPOOOOLL
  455.           Specifies the shared memory queue. When MPI is started, it
  456.           allocates a pool of shared memory for use in message passing.
  457.           This pool represents space used to buffer message headers and
  458.           small messages while the receiving PE is doing computations or
  459.           I/O. The default of 1024 bytes is the number of bytes that can be
  460.           pending.
  461.  
  462.           Default:  1024 bytes
  463.  
  464.           Operating system:  UNICOS/mk systems
  465.  
  466.      MMPPII__SSMM__TTRRAANNSSFFEERR
  467.           Specifies the number of slots in the shared memory queue that can
  468.           be occupied by a send operation at the receiver. A slot consists
  469.           of four UNICOS/mk words. By default, a single send operation can
  470.           occupy 128 slots (or buffer 512 words) while the receiving PE is
  471.           doing computations or I/O.
  472.  
  473.           Default:  128 queue slots
  474.  
  475.           Operating system:  UNICOS/mk systems
  476.  
  477.      MMPPII__TTYYPPEE__DDEEPPTTHH
  478.           Sets the maximum number of nesting levels for derived data types.
  479.           (Might be required by standard-compliant programs.) The
  480.           MMPPII__TTYYPPEE__DDEEPPTTHH variable limits the maximum depth of derived data
  481.           types that an application can create.  MPI generates an error
  482.           message if this limit (or the default, if not set) is exceeded.
  483.  
  484.           Default:  8 levels
  485.  
  486.           Operating system:  UNICOS and IRIX systems
  487.  
  488.      MMPPII__TTYYPPEE__MMAAXX
  489.           Determines the maximum number of data types that can
  490.           simultaneously exist for any single MPI process. Use this
  491.           variable to increase internal default limits.  (This variable
  492.           might be required by standard-compliant programs.)  MPI generates
  493.           an error message if this limit (or the default, if not set) is
  494.           exceeded.
  495.  
  496.           Default:  1024
  497.  
  498.           Operating system:  UNICOS and IRIX systems
  499.  
  500. SSEEEE AALLSSOO
  501.      mmppiirruunn(1), mmpptt__iinnttrroo(1)
  502.  
  503.      aarrrraayydd(1M)
  504.  
  505.      iinnttrroo__ssttrreeaammss(3), MMPPII__BBuuffffeerr__aattttaacchh(3), MMPPII__BBuuffffeerr__ddeettaacchh(3),
  506.      MMPPII__IInniitt(3)
  507.  
  508.      aarrrraayydd..ccoonnff(4)
  509.  
  510.      aarrrraayy__sseerrvviicceess(5)
  511.  
  512.      For more information about using MPI on UNICOS, UNICOS/mk, and IRIX
  513.      systems, see the _M_e_s_s_a_g_e _P_a_s_s_i_n_g _T_o_o_l_k_i_t:  _M_P_I _P_r_o_g_r_a_m_m_e_r'_s _M_a_n_u_a_l,
  514.      publication SR-2197.
  515.  
  516.      Man pages exist for every MPI subroutine and function, as well as for
  517.      the mmppiirruunn(1) command.  Additional online information is available at
  518.      hhttttpp::////wwwwww..mmccss..aannll..ggoovv//mmppii, including a hypertext version of the
  519.      standard, information on other libraries that use MPI, and pointers to
  520.      other MPI resources.
  521.  
  522.  
  523.      This man page is available only online.
  524.